home *** CD-ROM | disk | FTP | other *** search
-
- //==================================================================
- #ifndef _VOLKER_H_
- #define _VOLKER_H_
- //==================================================================
- //nepriatelske lietadlo
-
- //rychlos¥
- #define Volker_Speed 10.5f
-
- //kolizne a gulometove body
- #define Volker_Left Get3D(-40.0f,0.0f,0.0f)
- #define Volker_Right Get3D(40.0f,0.0f,0.0f)
- #define Volker_Up Get3D(0.0f,6.0f,0.0f)
- #define Volker_Down Get3D(0.0f,-6.0f,0.0f)
- #define Volker_Front Get3D(0.0f,0.0f,20.0f)
- #define Volker_Back Get3D(0.0f,0.0f,-43.0f)
- #define Volker_BulletLeft Get3D(-15.0f,-5.0f,0.0f)
- #define Volker_BulletRight Get3D(15.0f,-5.0f,0.0f)
-
- //pozicia vrtule
- #define Volker_VrtulaPoint Get3D(0.0f,2.0f,20.0f)
-
- //frekvencia strielania
- #define Volker_BulletFreq 130.0f
-
- //hlasitost zvuku
- #define Volker_SoundScale 130.0f
-
- //kedy po zostreleni zmizne
- #define Volker_DestroyTime 15000.0f
-
- //Ai mody
- #define Volker_SledovanieMaxTime 12000.0f
- #define Volker_VyhybanieMaxTime 1500.0f
- #define Volker_UhybanieMaxTime 3500.0f
-
- //Ai fyzicke zdatnosti lietadla
- #define Volker_MaxSteerZ 1.0f //maximalny zatocenie vodorovne
- #define Volker_MaxSteerX 0.5f //maximalne zatocenie vertikalne
-
- #define Volker_FactorX 0.04f
- #define Volker_FactorZ 0.05f
- #define Volker_FactorY 0.04f
-
-
- //--------------------------------------------------------------
- // Name: VOLKER class
- // Desc: nemecke nepriatelske lietadlo Messerschmitt
- //--------------------------------------------------------------
- class VOLKER
- {
- private:
-
- //zisti koliziu zeme
- bool GetGroundCollision();
-
- //zvuk
- SOUND Sound;
- bool SoundPlay;
-
- //AI
- void ProcessSledovanie();
- void ProcessVyhybanie();
- void ProcessUhybanie();
-
-
- public:
-
- //vlastnosti
- int Life;
-
- //aktivacia
- bool Active;
- float ActiveTime;
-
- //m≤dy
- bool NormalMode;
- bool CrazyMode;
- bool DestroyedMode;
-
- //AI mody
- bool Sledovanie; //utocny mod
- bool Vyhybanie; //vyhnutie sa zemi
- bool Uhybanie; //ked dostal zasah tak sa uhne
- float AITime;
-
- //vrtula
- float VrtulaRotation;
- VECTOR3D PV;
-
- //pozicia a matica
- VECTOR3D Pos;
- VECTOR3D Rot;
- float ActRotZ;
- float ActRotX;
- D3DXMATRIX Matrix;
-
- //kolizne body
- VECTOR3D PL,PR,PU,PD,PF,PB ;
-
- //AI
- VECTOR3D SpitFirePoint;
- float Distance;
-
- //strely
- BULLETSYSTEM Bullet;
- VECTOR3D BL,BR;
- float BulletTime;
-
- //zastav zvuk
- void StopSound();
-
- //inicializacia
- void Initialize();
-
- //system
- void Reset();
-
- //refresh & render
- void Refresh();
-
- //kolizia s lietadlom
- bool CollisionDetail(VECTOR3D P1, VECTOR3D P2);
- bool CollisionBox(VECTOR3D P1, VECTOR3D P2);
-
-
- };
-
-
-
-
- //==================================================================
- #endif //_VOLKER_H_